Home page
Control panel
Neuron editors
Network editors
Drug editor
Visualization tool
Analysis tools
User manual
Published work with XNBC
Articles on XNBC

XNBC: a software package to simulate biological neural networks for research and education

Project leader : Pr Jean-François Vibert

XNBC is an open source simulation tool for the neuroscientists interested in simulating biological neural networks using a user friendly tool.

A tool for neurobiologists to simulate and analyze the behavior of simulated biological neurons and neural networks. XNBC is easy to use, full featured and extensible.

The licence is the General Public Licence (GPL)

XNBC history

Neuro_Bio_Cluster (NBC) was developped to study the respiratory neurogenesis. Its development started in july 1988, First results were published in 1989. NBC became XNBC when he got a graphical X interface (XNBC V7). It was developped for research in computational neurobiology in close collaboration between neuroscientists and computer scientists.
A simplified version has been developped for pedagogy at the occasion of a book of neurophysiology including simulation exercises using XNBC Simplified to help to understand the neuron and network mode of eperation. This book,is "Neurophysiologie : de la physiologie l'exploration fonctionnelle" published by Elsevier is in French.

The current major version of XNBC is Version 9.

The current version is 9.10-i for Linux (February 2009) and 9.11 for Windows (April 2011)

Two manuals are available : a simplified and afull manual, in pdf format :

XNBC Philosophy

XNBC is a full featured graphic workstation providing

  • Graphic tools to define
    • the neuron parameters
    • the simulated network
  • Interactive tools to run the simulation and give
    • stimulation
    • drugs
  • Graphic tools to examine the simulation results
    • dynamic visualization
    • static visualization
    • time domain analysis
    • frequency domain analysis

The XNBC objects

The neuron

A neuron is the basic element of XNBC. It represents a neural entity that has a particular physical type, and has a specified location. It is of course a real concept. The neurons are the basis of the neural activities. Each neuron is individually simulated and has its own parameters evolution (membrane potential, ionic conductance, etc...). A neuron can share some basic properties with other neurons (we say that they pertain to the same cluster -see below-), but has its own life, different from the other neurons. Each neuron can be anatomically positioned in the 3D space if needed.

The cluster

A cluster is an abstraction allowing to describe simultaneously in one shot a large number of neurons. When describing a cluster properties, we describe the basic parameters of the neurons (rest potential, rest threshold, membrane capacity, mean Na or K conductance, etc.). Many neurons can share the same basic properties, and then evolve for their own. These neurons are said pertaining to the same cluster. The way the neuron is modeled is also a cluster property.

Four different ways of modeling the neurons can be chosen to describe the neuron and thus to constitute the clusters:

  • the Phenomenologic Model of neuron (PUM), a phenomenologic model with adaptation and post spike membrane shunt.
  • the Leaky Integrator Model of neuron (LIM), the classical simple leaky integrator
  • the Bursting Unit Model of neuron (BUM), a phenomenologic model of conditional burster with adaptation and post spike membrane shunt.
  • the Conductance Based Model of neuron (CBM), a Hodgkin-Huxley like model with 14 different transmembranar currents
  • the Virtual (not simulated by the simulator) model stored in a file and coming from either a live experiment or a previous simulation. This model allows to made hybrid networks made of simulated neurons receiving inputs from neurons experimentally recorded.

The concept of cluster has proven to be a very powerful concept to describe large sets of neurons and to group them. When only one cluster is used in a nucleus (see below), the cluster can be viewed as a nucleus.

The nucleus

The nucleus is a new concept introduced with XNBC V8.0. It is a convenience object to design a group of neurons (each belonging to a given cluster) that have the same location area, specified by a center and a radius arround this center. This concept introduces the spatial influence in the networks interactions and allows to take into account

  • the anatomic location of neurons (the Horsley Clarke coordinates can be used)
  • the connection according to the inter neuron distance
  • the connection pattern
  • the dissociation of anatomical location and unit characteristics
  • the neuromodulator or drug concentration according to the production or injection locus (in a future version of XNBC)

A nucleus is constituted by several neurons. These neurons can pertain to one or several clusters, and clusters can span several nuclei (since they are only a way to describe the neuron behavior, not the neuron location). When nuclei contain only one cluster, nucleus and cluster can be viewed as equivalent (in this case, the simple network editor can be used).

Neurons inside nuclei can be connected together and to the other nuclei.

The network

A network is made of one or several nuclei and/or one or several isolated neurons. Nuclei and neurons can be anatomicaly positioned if necessary. Nuclei and neurons are connected together by links representing the axons of constituting neurons (see below).

The connections or links

Neurons can be connected together. Connections can be either excitatory, inhibitory or with NMDA (long lasting excitation), or a mix of excitatory and inhibitory, called random connection. Inter neural transmission of action potentials, called interneural delay (or referred as axon length) can be adjusted, as well as the number of synaptic boutons at the axon ending, called also synaptic weight. The connection matrix can be defined either globally or individually, neuron to neuron.

Neuron and network parameters can be modified during the simulation, to mimic electrical stimulations and drugs action.

Three tools are available to analyze the simulation results

The temporal evolution of the network and of selected neurons can be visualized. A point process, frequency or dynamic analysis of the simulator output can be performed.

Have a look to the User Manual of XNBC to have more details and visit the other pages of th XNBC Web site, or download a newer version as a pdf file.

XNBC runs on most Unix systems:

  • Linux with LessTif and GTK (rpm binary files available)
  • True 64/DECOSF 1/Digital Unix
  • Ultrix
  • AIX
  • SunOS
  • HPux

XNBC runs on Windows

For Linux users: Sign The Linux Driver Petition
Authors : J-F Vibert and F Alvarez. Last update : 04-March-2014